ফোরট্রানে IF, ELSE IF, ELSE স্টেটমেন্ট
ফোরট্রানে IF, ELSE IF, এবং ELSE স্টেটমেন্টগুলো শর্তাধীন (conditional) কার্যক্রমের জন্য ব্যবহৃত হয়। এই স্টেটমেন্টগুলির মাধ্যমে প্রোগ্রামটি নির্দিষ্ট শর্ত পূর্ণ হলে একটি কাজ সম্পাদন করবে, আর শর্ত পূর্ণ না হলে অন্য একটি কাজ করবে।
১. IF স্টেটমেন্ট
IF স্টেটমেন্টটি সবচেয়ে মৌলিক শর্ত পরীক্ষার জন্য ব্যবহৃত হয়। এটি শর্ত সত্য হলে একটি নির্দিষ্ট কোড ব্লক কার্যকর করে এবং শর্ত মিথ্যা হলে কিছুই করে না (যদি না অন্য কোনো শর্ত দেওয়া থাকে)।
সিনট্যাক্স:
IF (condition) THEN
! কোড যা শর্ত সত্য হলে কার্যকর হবে
END IFউদাহরণ:
INTEGER :: x
x = 5
IF (x > 0) THEN
PRINT *, 'x is positive'
END IFএখানে যদি x ০-এর চেয়ে বড় হয়, তবে আউটপুট হবে: x is positive।
২. IF-ELSE স্টেটমেন্ট
IF-ELSE স্টেটমেন্টে দুটি শর্ত থাকে—একটি শর্ত সত্য হলে প্রথম ব্লক কার্যকর হয়, আর যদি শর্ত মিথ্যা হয়, তবে দ্বিতীয় ব্লক কার্যকর হয়।
সিনট্যাক্স:
IF (condition) THEN
! শর্ত সত্য হলে কোড
ELSE
! শর্ত মিথ্যা হলে কোড
END IFউদাহরণ:
INTEGER :: x
x = -5
IF (x > 0) THEN
PRINT *, 'x is positive'
ELSE
PRINT *, 'x is non-positive'
END IFএখানে x মাইনাস ৫ হওয়ায় আউটপুট হবে: x is non-positive।
৩. IF-ELSE IF-ELSE স্টেটমেন্ট
IF-ELSE IF-ELSE স্টেটমেন্টে একাধিক শর্ত পরীক্ষা করা যায়। যদি প্রথম শর্ত মিথ্যা হয়, তবে পরবর্তী শর্তটি পরীক্ষা করা হয় এবং শেষ পর্যন্ত ELSE ব্লক কার্যকর হয় যদি কোনো শর্ত সত্য না হয়।
সিনট্যাক্স:
IF (condition1) THEN
! শর্ত ১ সত্য হলে কোড
ELSE IF (condition2) THEN
! শর্ত ২ সত্য হলে কোড
ELSE
! শর্ত ১ এবং ২ মিথ্যা হলে কোড
END IFউদাহরণ:
INTEGER :: x
x = 0
IF (x > 0) THEN
PRINT *, 'x is positive'
ELSE IF (x < 0) THEN
PRINT *, 'x is negative'
ELSE
PRINT *, 'x is zero'
END IFএখানে x এর মান ০ হওয়ায় আউটপুট হবে: x is zero।
৪. নেস্টেড IF স্টেটমেন্ট (Nested IF)
ফোরট্রানে IF স্টেটমেন্টকে অন্য IF স্টেটমেন্টের মধ্যে ব্যবহার করা যেতে পারে, যা নেস্টেড IF নামে পরিচিত। এটি জটিল শর্তাবলীর জন্য উপযোগী।
উদাহরণ:
INTEGER :: x
x = 10
IF (x > 0) THEN
IF (x > 5) THEN
PRINT *, 'x is greater than 5'
ELSE
PRINT *, 'x is greater than 0 but less than or equal to 5'
END IF
ELSE
PRINT *, 'x is non-positive'
END IFএখানে x এর মান ১০ হওয়ায় আউটপুট হবে: x is greater than 5।
IF-ELSEIF-ELSE স্টেটমেন্টের উদাহরণ:
INTEGER :: a, b
a = 10
b = 5
IF (a > b) THEN
PRINT *, 'a is greater than b'
ELSE IF (a < b) THEN
PRINT *, 'a is less than b'
ELSE
PRINT *, 'a is equal to b'
END IFএখানে, a এবং b এর মানের ভিত্তিতে যথাযথ আউটপুট প্রিন্ট হবে। এখানে আউটপুট হবে: a is greater than b।
সারাংশ
- IF: একটি শর্ত যাচাই করে, যদি শর্ত সত্য হয় তবে কোড কার্যকর হয়।
- IF-ELSE: দুটি শর্ত থাকে—একটি শর্ত সত্য হলে প্রথম ব্লক কার্যকর, আর অন্যথায় দ্বিতীয় ব্লক কার্যকর।
- IF-ELSE IF-ELSE: একাধিক শর্ত পরীক্ষা করে এবং কোনটি সত্য হলে তার ব্লক কার্যকর হয়।
- নেস্টেড IF: একটি
IFএর মধ্যে অন্যIFব্যবহার করা হয়।
এই স্টেটমেন্টগুলো ফোরট্রানে শর্তাধীন কার্যক্রম পরিচালনা করতে অত্যন্ত গুরুত্বপূর্ণ।